Aus Oxoscript wird NanoPy - mehr Infos

Audio-Funktionen

setBPM

  setBPM(bpm:int)

Setzt die BPM (beats per minute) der nachfolgenden Noten. Der Standard ist 120.

setBPM(240)
note(C_NOTE_C, C_DURATION_1_2)
delay(1000)
setBPM(120)
note(C_NOTE_C, C_DURATION_1_2)
delay(1000)

setOctave

  setOctave(octave:byte)

Setzt die Oktave der nachfolgenden Noten.

setOctave(C_OCTAVE_C5)
note(C_NOTE_E, C_DURATION_1_4)
delay(500)
setOctave(C_OCTAVE_C6)
note(C_NOTE_E, C_DURATION_1_4)
delay(500)

Verfügbare Oktaven:

C_OCTAVE_C3
C_OCTAVE_C4
C_OCTAVE_C5
C_OCTAVE_C6
C_OCTAVE_C7
C_OCTAVE_C8

setWaveform

  setWaveform(waveform:byte)

Setzt die Wellenform der nachfolgenden Töne. Der Standard ist der Sinus (C_WAVEFORM_SINE).

setWaveform(C_WAVEFORM_SAWTOOTH)

Verfügbare Wellenformen:

C_WAVEFORM_SQUARE
C_WAVEFORM_SAWTOOTH
C_WAVEFORM_TRIANGLE
C_WAVEFORM_SINE
C_WAVEFORM_RANDOM

soundEffect

  soundEffect(soundid:int)

Experimentell

Spielt einen internen Sound mit der soundid ab. Es können entweder eine Nummer zwischen 0 und 4 angegeben werden oder eine der folgenden Konstanten:

SOUND_STARTUP
SOUND_BLUB
SOUND_CRASH
SOUND_LEVEL
SOUND_LOSE

stopSong

  stopSong()

Stoppt einen aktuell gespielten Song. Keine Wirkung, wenn kein Song gespielt wird.

playSong(true)
delay(1000)
stopSong()

resumeSong

  resumeSong()

Setzt einen pausierten Song fort. Keine Auswirkung, wenn kein Song pausiert wurde.

playSong(true)
delay(1000)
pauseSong()
delay(1000)
resumeSong()

pauseSong

  pauseSong()

Pausiert einen gerade gespielten Song. Keine Wirkung, wenn kein Song gespielt wird.

Ein pausierter Song kann entweder mit resumeSong() oder playSong(…) fortgesetzt werden.

playSong(true)
delay(1000)
pauseSong()

playSong

  playSong(autorepeat:bool)

Spielt den zuvor erstellten Song ab. Wenn autorepeat eingestellt ist, wird der Song unendlich lange abgespielt.

beginSong()
note(C_NOTE_A, C_DURATION_1_4)
note(C_NOTE_B, C_DURATION_1_4)
note(C_NOTE_C, C_DURATION_1_2)
endSong()
playSong(false) # autorepeat = false
delay(2000)
playSong(true) # autorepeat = true

endSong

  endSong()

Beendet den Song. Alle Tone()- und Note()-Funktionen danach werden sofort abgespielt und nicht mehr als Song gespeichert.

beginSong()
note(C_NOTE_A, C_DURATION_1_4)
note(C_NOTE_B, C_DURATION_1_4)
note(C_NOTE_C, C_DURATION_1_2)
endSong()
playSong(false)

noteAdvanced

  noteAdvanced(note:byte, durFactor:float, octave:byte, articulation:float)

Spielt eine Note für den angegebenen Tondauerfaktor, die Oktave und die Artikulation.

noteAdvanced(C_NOTE_A, C_DURATION_1_4, C_OCTAVE_C5, C_ARTICULATION_STACCATO)

Verfügbare Noten:

C_NOTE_REST # 0 Hz
C_NOTE_C # 131 Hz
C_NOTE_CS # 139 Hz
C_NOTE_D # 147 Hz
C_NOTE_DS # 156 Hz
C_NOTE_E # 165 Hz
C_NOTE_F # 175 Hz
C_NOTE_FS # 185 Hz
C_NOTE_G # 196 Hz
C_NOTE_GS # 208 Hz
C_NOTE_A # 220 Hz
C_NOTE_AS # 233 Hz
C_NOTE_B # 247 Hz

Verfügbare Tondauerfaktoren:

C_DURATION_1_1 # 4.0
C_DURATION_1_2 # 2.0
C_DURATION_1_4 # 1.0
C_DURATION_1_8 # 0.5
C_DURATION_1_16 # 0.25
C_DURATION_1_32 # 0.125

Verfügbare Oktaven:

C_OCTAVE_C3
C_OCTAVE_C4
C_OCTAVE_C5
C_OCTAVE_C6
C_OCTAVE_C7
C_OCTAVE_C8

Verfügbare Artikulationen:

C_ARTIKULATION_STANDARD
C_ARTIKULATION_STACCATO
C_ARTICULATION_STACCATISSIMO
C_ARTIKULATION_TENUTO
C_ARTIKULATION_MARCATO
C_ARTIKULATION_LEGATO

note

  note(note:byte, durFactor:long)

Spielt eine Note für den angegebenen Tondauerfaktor.

note(C_NOTE_A, C_DURATION_1_4)

Verfügbare Noten:

C_NOTE_REST # 0 Hz
C_NOTE_C # 131 Hz
C_NOTE_CS # 139 Hz
C_NOTE_D # 147 Hz
C_NOTE_DS # 156 Hz
C_NOTE_E # 165 Hz
C_NOTE_F # 175 Hz
C_NOTE_FS # 185 Hz
C_NOTE_G # 196 Hz
C_NOTE_GS # 208 Hz
C_NOTE_A # 220 Hz
C_NOTE_AS # 233 Hz
C_NOTE_B # 247 Hz

Verfügbare Tondauerfaktoren:

C_DURATION_1_1 # 4.0
C_DURATION_1_2 # 2.0
C_DURATION_1_4 # 1.0
C_DURATION_1_8 # 0.5
C_DURATION_1_16 # 0.25
C_DURATION_1_32 # 0.125

beginSong

  beginSong()

Legt einen neuen Song an. Alle Tone()- und Note()-Funktionen danach werden nicht sofort abgespielt, sondern als Song gespeichert.

beginSong()
note(C_NOTE_A, C_DURATION_1_4)
note(C_NOTE_B, C_DURATION_1_4)
note(C_NOTE_C, C_DURATION_1_2)
endSong()
playSong(false)

noTone

  noTone()

Schaltet die Tonausgabe aus.

tone(440, 0)
delay(1000)
noTone()

tone

  tone(frequency:int,duration:long)

Spielt einen Ton mit der Frequenz “frequency” und der dauer “duration” in Millisekunden.

tone(440,1000)